🎖️GitЯра🎖️
Commit 4fd52ffb46135a4f3d68d75c3f71fd90d7a92d94
Parents : e8db149
Author : James Rich <2199651+jamesarich@users.noreply.github.com>
Signature : Signature validation error
Date : 2026-04-21T09:44:44-05:00
Committer : GitHub <noreply@github.com>
Date : 2026-04-21T14:44:44Z
fix(canned-messages): enable multiline text editing for long message lists (#5203)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Changes
2 files changed, 4 insertions(+), 1 deletions(-)
Diff
diff --git a/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/component/EditTextPreference.kt b/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/component/EditTextPreference.kt
index 43a19ef1bd..0e4699a28b 100644
--- a/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/component/EditTextPreference.kt
+++ b/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/component/EditTextPreference.kt
@@ -205,6 +205,7 @@ fun EditTextPreference(
onFocusChanged: (FocusState) -> Unit = {},
trailingIcon: (@Composable () -> Unit)? = null,
visualTransformation: VisualTransformation = VisualTransformation.None,
+ multiline: Boolean = false,
) {
var isFocused by remember { mutableStateOf(false) }
@@ -212,7 +213,8 @@ fun EditTextPreference(
OutlinedTextField(
modifier = Modifier.fillMaxWidth().onFocusEvent { onFocusChanged(it) },
value = value,
- singleLine = true,
+ singleLine = !multiline,
+ maxLines = if (multiline) 5 else 1,
enabled = enabled,
isError = isError,
onValueChange = {
diff --git a/feature/settings/src/commonMain/kotlin/org/meshtastic/feature/settings/radio/component/CannedMessageConfigItemList.kt b/feature/settings/src/commonMain/kotlin/org/meshtastic/feature/settings/radio/component/CannedMessageConfigItemList.kt
index 4c6cdc9f55..89df9d4bef 100644
--- a/feature/settings/src/commonMain/kotlin/org/meshtastic/feature/settings/radio/component/CannedMessageConfigItemList.kt
+++ b/feature/settings/src/commonMain/kotlin/org/meshtastic/feature/settings/radio/component/CannedMessageConfigItemList.kt
@@ -181,6 +181,7 @@ fun CannedMessageConfigScreen(viewModel: RadioConfigViewModel, onBack: () -> Uni
KeyboardOptions.Default.copy(keyboardType = KeyboardType.Text, imeAction = ImeAction.Done),
keyboardActions = KeyboardActions(onDone = { focusManager.clearFocus() }),
onValueChanged = { messagesInput = it },
+ multiline = true,
)
}
}
Served by rngit 1.5.4 - Generated in 0.05s